High speed volatile and non-volatile storage of data is an important feature in computer systems. Present solutions use specialized volatile memory technologies, like DRAM and SRAM with non volatile back up memories, such as BBSRAM, EEPROM and FLASH. In case of power loss significant amounts of volatile data may have to be stored in the non-volatile memory. This is typically done via signaling interfaces between volatile and nonvolatile memory regions, the interfaces having limited parallelism, high current requirements, and possibly using multiple processor cycles to manage the data transfer. A faster and less power intensive solution is nvSRAM memories, where each volatile cell is paired with a non-volatile cell and data may pass from one region to another without first being placed on a bus or other signaling interface. One disadvantage of present nvSRAM circuits is their limited density and relatively large memory cell size, typically involving twelve high and low voltage transistor.